The present invention relates to an error prevention method for multimedia, and more particularly, to a method for improving data recovery and channel throughput in channels wherein a random error and a burst error occur by using a rate compatible punctured convolutional code (RCPC) and an automatic retransmission on request (ARQ). Further, this invention has been adopted by the ITUT/SG16/Q11Mobile Group.
Let us consider multimedia terminals which transmit and receive arbitrary packets of data (video, audio, data, or a mixed form of any of those three). The transmitter transmits information packets, for example, I, J, and other packets. For each information packet, the transmitter forms N-sized bitstreams which are different representations of given information packets. For example, the transmitter can generate a packet A (B, C, or D) for given information packet Type-1 and Type-2 are different in that they use different retransmission methods. The packets to be transmitted are formed using either convolutional code or RCPC.
FIG. 1 is a block diagram showing a general situation of data transmitted and received using ARQ. The basic concept of Type-1 ARQ will be described as follows with reference to FIG. 1. When a transmitter transmits a packet A having a length of N, a packet decoder 120 in a receiver starts decoding the received packet A 110. At this time, if errors occur in the packet A and no further decoding is possible, for example, channel coding is not employed, channel coding having a 1-bit error or more is employed or, more errors than a channel coder can detect and correct occur, the receiver asks the transmitter to send the same packet A again. Here, retransmission would be repeated either until the decoder 120 receives an error-free packet A, or for some specific number of iterations to perform transmission and receiving with respect to the next packet. Type-1 ARQ is very effective in burst-error containing channel. Next, Type-2 ARQ will be described. Up to now, there are three types of Type-2 ARQ, i.e., a basic type, a Class A and a Class B, each of which uses RCPC given information I (J,K, . . . ).
FIG. 2 is a conceptual diagram showing the operation of the basic type, wherein arrows represent combination. Here, given information I, the transmitter generates packets A and B using RCPC at a rate of ½ and transmits only the packet A. The decoder in the receiver attempts to decode the packet A. If successful, the decoder then attempts to decode the first packet of two for the next information J. Otherwise, the receiver asks the transmitter to send the packet B. Also, the decoder attempts decoding a combination of packets A and B. If successful, the decoder then attempts to decode the first packet of two for the next information J. Otherwise, the receiver asks the transmitter to send the packet A again and all of these procedures are repeated. The basic type has an advantage in that implementation is not so complicated.
FIG. 3 is a conceptual diagram showing the operation of the Class A packet (Lin-Yu), wherein * denotes self-decoding and arrows represent combination. The operational principle thereof is similar to the basic type except how to combine packets A and B when both packets fail to be decoded. That is, the decoder attempts decoding the combination of packets A and B, and if it fails, the receiver asks the transmitter to send the packet A again. Next, if the decoder succeeds decoding only the packet A, the next information J is processed, and if the decoder fails, the receiver combines the previously stored packet B and currently received packet A (i.e., in general, interleaves the two) to attempt decoding. This method is more effective in a random error containing channel rather than in a burst error containing channel.
Next, Class B is significantly more complicated than the basic type and the Class A. The basic concept thereof is based on the Class A. First, the Class A (Lin-Yu) is performed by generating the packets A and B given the information I using RCPC at a rate of ½. As described above, the Type-1 ARQ is greatly effective in the burst error containing channel. However, with Type-1 ARQ, retransmission would be more frequent in the random error containing channel, which causes drastically lower channel throughput. Even though Type-2 ARQ allows good performance in the random error containing channel, retransmission would be more frequent in the burst error containing channel; therefore, channel throughput can be lowered.